import axios from './axios';

const BASE_URL = '/api/user';

// 分页查询用户列表
export function getUserPage(data) {
  return axios.post(`${BASE_URL}/page`, data);
}

// 获取用户列表
export function getUserList(params) {
  return axios.get(`${BASE_URL}/list`, { params });
}

// 获取用户详情
export function getUserById(id) {
  return axios.get(`${BASE_URL}/${id}`);
}

// 创建用户
export function addUser(data) {
  return axios.post(`${BASE_URL}`, data);
}

// 更新用户
export function updateUser(data) {
  return axios.put(`${BASE_URL}/${data.id}`, data);
}

// 删除用户
export function deleteUser(id) {
  return axios.delete(`${BASE_URL}/${id}`);
}

// 重置密码
export function resetPassword(userId, newPassword) {
  return axios.post(`${BASE_URL}/reset-password`, null, {
    params: { userId, newPassword }
  });
}

// 修改密码
export function changePassword(oldPassword, newPassword) {
  return axios.post(`${BASE_URL}/change-password`, null, {
    params: { oldPassword, newPassword }
  });
}

// 获取当前用户信息
export function getCurrentUser() {
  return axios.get(`${BASE_URL}/info`);
}

// 更新用户信息
export function updateUserInfo(data) {
  return axios.put(`${BASE_URL}/info`, data);
}

// 用户注册
export function register(data) {
  return axios.post(`${BASE_URL}/register`, data);
}

// 用户登录
export function login(data) {
  return axios.post(`${BASE_URL}/login`, data);
}

// 用户登出
export function logout(token) {
  return axios.post(`${BASE_URL}/logout`, null, {
    headers: { Authorization: `Bearer ${token}` }
  });
}

// 刷新token
export function refreshToken(refreshToken) {
  return axios.post(`${BASE_URL}/refresh`, null, {
    params: { refreshToken }
  });
} 